/*
对于长度为5位的一个01串，每一位都可能是0或1，一共有32种可能。它们的前几个是：

00000

00001

00010

00011

00100

请按从小到大的顺序输出这32种01串。
*/

 #include<bits/stdc++.h>
using namespace std;
vector<vector<int> > result;
vector<int> path;
void backtracking(int k,int index){
	if(path.size()==k){
		//result.push_back(path);
		for(int i=0;i<5;i++)
			cout<<path[i];
		cout<<endl;
		return;
	}
	for(int i=0;i<=1;i++){
		path.push_back(i);
		backtracking(k,0);
		path.pop_back();
	}
}
int main(){
	backtracking(5,0);
//	int len=result.size();
//	for(int i=0;i<len;i++){
//		for(int j=0;j<5;j++){
//			cout<<result[i][j];
//		}
//		cout<<endl;
//	}
		
		
		 
} 
